//package com.example.experiment5.controller;
//
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.web.bind.annotation.*;
//
//import java.util.ArrayList;
//import java.util.List;
//
//public class HomeController {
//
//    @Autowired
//    private StudentService studentService;
//
//    /**
//     * 查询出已经打卡的全部信息，返回
//     * @param page
//     * @param size
//     * @return
//     */
//    @ResponseBody
//    @GetMapping("/findAll/{page}/{size}")
//    public List<Student> findAll(@PathVariable("page") Integer page,@PathVariable("size") Integer size){
//        List<Student> list = studentService.SelectAllStudent();
//        List<Student> ns = null;
//        if(list.size()>=(page*size)){
//            ns =  list.subList((page-1)*size, page*size);
//        }else{
//            ns = list.subList((page-1)*size, list.size());
//        }
//        return ns;
//    }
//
//    @ResponseBody
//    @GetMapping("/findNum")
//    public int findNum(){
//        List<Student> list = studentService.SelectAllStudent();
//        return list.size();
//    }
//
//    /**
//     * 查询出已经打卡的全部信息，返回
//     * @param page
//     * @param size
//     * @return
//     */
//    @ResponseBody
//    @GetMapping("/findAllClockedIn/{page}/{size}")
//    public List<Student> findAllClockedIn(@PathVariable("page") Integer page,@PathVariable("size") Integer size){
//        List<Student> list = studentService.SelectTodayClocked();
//        List<Student> ns = null;
//        if(list.size()>=(page*size)){
//            ns =  list.subList((page-1)*size, page*size);
//        }else{
//            ns = list.subList((page-1)*size, list.size());
//        }
//        return ns;
//    }
//
//    /**
//     * 查询出未打卡的全部信息，返回
//     * @param page
//     * @param size
//     * @return
//     */
//    @ResponseBody
//    @GetMapping("/findAllNotClockedIn/{page}/{size}")
//    public List<Student> findAllNotClockedIn(@PathVariable("page") Integer page,@PathVariable("size") Integer size){
//        List<Student> list = studentService.SelectTodayNotClocked();
//        System.out.println(list);
//        List<Student> ns = new ArrayList<>();
//        for(int i=0;i<list.size();i++){
//            List<Student> s = studentService.selectLastTime(list.get(i).getSid());
//            ns.add(s.get(0));
//            ns.get(i).setNum(s.size());
//        }
//        if(ns.size()>=(page*size)){
//            ns = ns.subList((page-1)*size, page*size);
//        }else{
//            ns = ns.subList((page-1)*size, ns.size());
//        }
//        return ns;
//    }
//
//    @ResponseBody
//    @GetMapping("/findStudent/{sid}")
//    public List<Student> findStudent(@PathVariable("sid") String sid){
//        List<Student> list = studentService.SelectStudentBySid(Integer.valueOf(sid));
//        return list;
//    }
//
//    @ResponseBody
//    @GetMapping("/findClockedIn")
//    public int findClockedIn(){
//        List<Student> list = studentService.SelectTodayClocked();
//        return list.size();
//    }
//
//    @ResponseBody
//    @GetMapping("/findNotClockedIn")
//    public int findNotClockedIn(){
//        List<Student> list = studentService.SelectTodayNotClocked();
//        return list.size();
//    }
//
//    @ResponseBody
//    @GetMapping("/login/{username}/{password}")
//    public Login login(@PathVariable("username") String username,@PathVariable("password") String password){
//        Login login = new Login();
//        login.setUsername(username);
//        login.setPassword(password);
//        Login i = studentService.login(login);
//        if(i==null){
//            return new Login();
//        }else {
//            return i;
//        }
//    }
//
//    @ResponseBody
//    @PostMapping("/save")
//    public String save(@RequestBody Student student){
//        int i = studentService.insertStudent(student);
//        System.out.println(i);
//        if(i==1){
//            Student s = studentService.selectLastStudent();
//            System.out.println(s);
//            student.setSid(s.getSid());
//            int j = studentService.insertLogin(student);
//            if(j==1){
//                return "success";
//            }
//        }
//        return "fail";
//    }
//
//    @ResponseBody
//    @PostMapping("/updateState")
//    public String updateState(@RequestBody Student student){
//        int i = studentService.updateState(student);
//        if(i==1){
//            return "success";
//        }else {
//            return "fail";
//        }
//    }
//
//    @ResponseBody
//    @PostMapping("/updateStudent")
//    public String updateStudent(@RequestBody Student student){
//        int i = studentService.updateStudent(student);
//        int j = studentService.updateLogin(student);
//        if(i==1 && j==1){
//            return "success";
//        }else {
//            return "fail";
//        }
//    }
//
//    @ResponseBody
//    @GetMapping("/release")
//    public String release(){
//        List<Student> list = studentService.SelectTodayNotClocked();
//        List<Student> list1 = studentService.SelectTodayClocked();
//        if(list.size()>0 || list1.size()>0){
//            System.out.println("fail");
//            return "fail";
//        }else{
//            System.out.println("success");
//            List<Student> list2 = studentService.SelectAllStudent();
//            studentService.insertDaka(list2);
//            return "success";
//        }
//    }
//
//    @ResponseBody
//    @GetMapping("/deleteStudent/{sid}")
//    public String deleteStudent(@PathVariable("sid") Integer sid){
//        int i = studentService.deleteStudent(sid);
//        System.out.println(i);
//        if(i==1){
//            return "success";
//        }else{
//            return "fail";
//        }
//    }
//
//    @ResponseBody
//    @GetMapping("/studentTodayDakaState/{id}")
//    public int studentTodayDakaState(@PathVariable("id") Integer id){
//        Student student = studentService.SelectTodayClockedBySid(id);
//        System.out.println(student.getState());
//        return student.getState();
//    }
//
//    @ResponseBody
//    @GetMapping("/studentTodayDaka/{id}")
//    public Student studentTodayDaka(@PathVariable("id") Integer id){
//        Student student = studentService.SelectClockedByClockId(id);
//        if(student.getState()==1){
//            return student;
//        }else{
//            return new Student();
//        }
//    }
//
//    /**
//     * 根据sid,查询出历史打卡记录
//     * @param page
//     * @param size
//     * @return
//     */
//    @ResponseBody
//    @GetMapping("/studentDaka/{page}/{size}/{sid}")
//    public List<Daka> studentDaka(@PathVariable("page") Integer page,@PathVariable("size") Integer size,@PathVariable("sid") Integer sid){
//        List<Daka> list = studentService.SelectClockedBySid(sid);
//        List<Daka> dk = null;
//        if(list.size()>=(page*size)){
//            dk = list.subList((page-1)*size, page*size);
//        }else{
//            dk = list.subList((page-1)*size, list.size());
//        }
//        return dk;
//    }
//
//    @ResponseBody
//    @GetMapping("/studentDakaNum/{sid}")
//    public int studentDakaNum(@PathVariable("sid") Integer sid){
//        List<Daka> list = studentService.SelectClockedBySid(sid);
//        return list.size();
//    }
//
//    @ResponseBody
//    @PostMapping("/insertInformation")
//    public int insertInformation(@RequestBody Student student){
//        System.out.println(student);
//        int i = studentService.insertInformation(student);
//        return i;
//    }
//
//    @ResponseBody
//    @PostMapping("/updateInformation")
//    public int updateInformation(@RequestBody Student student){
//        System.out.println(student);
//        int i = studentService.updateInformation(student);
//        return i;
//    }
//}